<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        function Student(idCard) {
            this.idCard = idCard;
        }
        // 证明student下存在prototype属性
        console.log(Student.prototype)

        let s1 = new Student('10011');
        let s2 = new Student('10012');
        // 证明示例对象下存在__proto__
        console.log(s1.__proto__);
        // 验证示例对象下__proto__属性指向到构造函数原型
        console.log(s1.__proto__ == Student.prototype);//true
        console.log(s1.__proto__ == s2.__proto__);//true
        // 原型是被所有实例对象共享的 在使用面向对象思想时候需要将所有的方法 设置到原型上保存 不应该对象自己本身存储
        // 验证constructor
        console.log(s1.__proto__.constructor == Student)
    </script>
</body>

</html>